const enums = {
  //异常事件类型
  // TODO:待补充预设的事件类型
  riskEventType: {
    unstart: {
      label: '车辆未启动',
      value: 0,
      msg: '车辆【VIN码】已有【未启动天数】天未启动',
      keyWords: ['VIN码', '未启动天数'],
    },
    continue: {
      label: '车辆连续行驶',
      value: 2,
      msg: '车辆【VIN码】连续【监控天数】天的行驶里程【行驶里程】公里',
      keyWords: ['VIN码', '监控天数', '行驶里程'],
    },
    overdue: {
      label: '车辆逾期',
      value: 4,
      msg: '车辆【VIN码】的逾期天数已有【逾期天数】天',
      keyWords: ['VIN码', '逾期天数'],
    },
    leave: {
      label: '车辆驶离',
      value: 6,
      msg: '车辆【VIN码】离开管控区域【管控区域】【离开管控区域天数】天',
      keyWords: ['VIN码', '管控区域', '离开管控区域天数'],
    },
    loss: {
      label: 'TBOX失联',
      value: 7,
      msg: '车辆【VIN码】的TBOX已有【TBOX失联天数】天失联',
      keyWords: ['VIN码', 'TBOX失联天数'],
    },
    leaveControlArea: {
      label: '车辆驶出管控区域',
      value: 11,
      msg: '车辆【VIN码】已驶出管控区域【管控区域】',
      keyWords: ['VIN码', '管控区域'],
    },
    offlineWarehousing: {
      label: '车辆下线入库超期',
      value: 8,
      msg: '车辆【VIN码】下线入库超期',
      keyWords: ['VIN码'],
    },
    relocation: {
      label: '移库超期',
      value: 9,
      msg: '车辆【VIN码】移库超期',
      keyWords: ['VIN码'],
    },
    borrowing: {
      label: '借车超期',
      value: 10,
      msg: '车辆【VIN码】借车超期',
      keyWords: ['VIN码'],
    },
    activateUser: {
      label: '已激活成用户车',
      value: 12,
      msg: '车辆【VIN码】已激活成用户车',
      keyWords: ['VIN码'],
    },
    highRiskDealer: {
      label: '车辆所属经销商为高风险',
      value: 13,
      msg: '车辆【VIN码】所属经销商为高风险',
      keyWords: ['VIN码'],
    },
  },

  //异常事件比较运算符
  riskEventCompare: {
    less: {
      label: '小于',
      value: -1,
    },
    // equal: {
    //   label: "等于",
    //   value: 0,
    // },
    greater: {
      label: '大于',
      value: 1,
    },
  },

  //异常事件生效状态
  riskEventEnable: {
    ineffective: {
      label: '未生效',
      value: 0,
    },
    effective: {
      label: '已生效',
      value: 1,
    },
    disable: {
      label: '已停用',
      value: 2,
    },
  },

  //风控实施规则生效状态
  riskRuleEnable: {
    ineffective: {
      label: '未生效',
      value: 0,
    },
    effective: {
      label: '已生效',
      value: 1,
    },
    disable: {
      label: '已停用',
      value: 2,
    },
  },

  //风控实施规则驾驶限制类型
  riskRuleDrivingRestrictionsType: {
    limp: {
      label: '跛行',
      value: 0,
    },
    locak: {
      label: '锁车',
      value: 1,
    },
  },

  //风控实施规则位置上报执行类型
  riskRuleExecuteType: {
    oneDay: {
      label: '每天一次',
      value: 1,
    },
    oneWeek: {
      label: '每周一次',
      value: 2,
    },
  },

  //风控实施规则告警方式
  riskRuleWarnChannel: {
    stationLetter: {
      label: '站内信',
      value: 'stationLetter',
    },
    sms: {
      label: '短信',
      value: 'sms',
    },
    email: {
      label: '邮件',
      value: 'email',
    },
  },

  //风控实施规则生效状态
  warnMsgEnable: {
    ineffective: {
      label: '未生效',
      value: 0,
    },
    effective: {
      label: '已生效',
      value: 1,
    },
    disable: {
      label: '已停用',
      value: 2,
    },
  },
  //解除车辆管控设置-融资到期
  financingDue: {
    auto: {
      label: '自动',
      value: 0,
    },
    manual: {
      label: '手动',
      value: 1,
    },
  },
  //解除车辆管控设置-车辆预警后
  afterWarning: {
    auto: {
      label: '自动',
      value: 0,
    },
    manual: {
      label: '手动',
      value: 1,
    },
  },
  //授信车辆还款状态
  repaymentStatus: {
    inPayment: {
      label: '还款中',
      value: '0',
    },
    overdue: {
      label: '已逾期',
      value: '1',
    },
    closed: {
      label: '已结清',
      value: '2',
    },
    expire: {
      label: '融资已到期',
      value: '3',
    },
  },
  //对比符号
  comparison: {
    gt: {
      label: '大于',
      value: 'gt',
      filter: '6',
    },
    between: {
      label: '介于',
      value: 'between',
      filter: '7',
    },
    lt: {
      label: '小于',
      value: 'lt',
      filter: '8',
    },
  },
  taskStatus: {
    pending: {
      label: '待处理',
      value: 'Pending',
    },
    processing: {
      label: '处理中',
      value: 'Processing',
    },
    success: {
      label: '处理完成',
      value: 'Success',
    },
    fail: {
      label: '处理失败',
      value: 'Fail',
    },
  },
  riskStatus: {
    driving: {
      label: '正常行驶',
      value: 0,
    },
    lock: {
      label: '锁车',
      value: 1,
    },
    limp: {
      label: '跛行',
      value: 2,
    },
  },
  dealStatus: {
    notDeal: {
      label: '未处理',
      value: 0,
    },
    deal: {
      label: '已处理',
      value: 1,
    },
  },
  riskWarnStatus: {
    warning: {
      label: '预警',
      value: 1,
    },
    notWarning: {
      label: '未预警',
      value: 0,
    },
  },
  engineState: {
    flameout: {
      label: '熄火',
      value: 0,
    },
    ignition: {
      label: '点火',
      value: 2,
    },
    travel: {
      label: '行驶中',
      value: '',
    },
  },
  limpStatus: {
    nonsupport: {
      label: '不支持',
      value: 0,
    },
    support: {
      label: '支持',
      value: 1,
    },
  },
  limpEnable: {
    nonsupport: {
      label: '不支持',
      value: 0,
    },
    support: {
      label: '支持',
      value: 1,
    },
  },
  platformThirdType: {
    export: {
      label: '导出第三方授信车辆数据',
      value: 'PlatformThirdCreditVehicleExport',
      title: '授信车辆',
    },
    creditVehicle: {
      label: '批量导入授信车辆',
      value: 'PlatformThirdImportCreditVehicle',
      title: '导入授信车辆结果',
    },
    vinExport: {
      label: '导入VIN码查询授信车辆',
      value: 'PlatformThirdCreditVehicleByVinExport',
      title: '导入VIN码查询结果',
    },
    electricFenceVinImport: {
      label: '批量导入关联车辆',
      value: 'MsCreditBusinessVehicleFenceImport',
      title: '导入关联车辆结果',
    },
  },
  merchantOperaterType: {
    addMerchant: {
      label: '新增商户',
      value: 10,
    },
    editMerchantInfo: {
      label: '修改商户基本信息',
      value: 11,
    },
    editMerchantPerson: {
      label: '修改商户负责人信息',
      value: 12,
    },
    editMerchantAccount: {
      label: '修改商户账号信息',
      value: 13,
    },
    editManageContack: {
      label: '修改管理联系人信息',
      value: 14,
    },
    autoRiskRuleAuth: {
      label: '自动风控规则授权',
      value: 15,
    },
    roleSync: {
      label: '角色同步',
      value: 16,
    },
    fieldSync: {
      label: '字段同步',
      value: 17,
    },
  },
};

Object.keys(enums).forEach(e => {
  enums[e].array = Object.values(enums[e]);
});

export default enums;
